Reed-Solomon (RS) codes are a very powerful class of error correction codes (ECC) useful for channel encoding and decoding in data storage devices. The performance of RS codes represents one of the key determinants of system reliability. With increased areal density on one hand, and increased requirements for low error rates on the other hand, there is a demand for encoding and decoding circuits and methods that can provide a combination of low error rates, high speed and improved system reliability. Increasing ECC overhead reduces error rates and makes the system more reliable, however the increased overhead due to redundancy reduces storage capacity and reduces speed.
To achieve better reliability, RS code length and symbol size can be increased, but this increased reliability comes at a price of increased decoding complexity, which can limit speed unacceptably.
Embodiments of the present invention provide solutions to these and other problems, and offer other advantages over the prior art.